package pers.litao.bit.user.service;

import com.baomidou.mybatisplus.extension.service.IService;
import pers.litao.bit.commons.entities.user.UserInfoEntity;
import pers.litao.bit.commons.utils.LoginUserInfo;
import pers.litao.bit.commons.utils.R;
import pers.litao.bit.commons.vo.user.UserRegisterVo;

import java.util.Map;

/**
 * @author 李涛
 * @date 2020-11-16 15:42
 */
public interface UserInfoService extends IService<UserInfoEntity> {
    /**
     * 保存用户
     *
     * @param userInfoEntityEntity
     * @return
     */
    R userSave(UserRegisterVo userInfoEntityEntity);

    /**
     * 用户登录
     *
     * @param userInfoEntityEntity
     * @return
     */
    R userLogin(UserInfoEntity userInfoEntityEntity);

    /**
     * 获取用户信息
     *
     * @param token
     * @param service
     * @param id
     * @return
     */
    R getUserInfo(String token,String service,Long id);

    /**
     * 用户列表，内部调用
     *
     * @param ids
     * @return
     */
    R getUserList(Long[] ids);

    /**
     * 获取相同城市的用户ID
     *
     * @param id
     * @return
     */
    R getUserIds(Long id);

    /**
     * 更新用户密码
     *
     * @param userInfoEntity
     * @param loginUserInfo
     * @return
     */
    R updatePassword(UserRegisterVo userInfoEntity, LoginUserInfo loginUserInfo);
}
